// pages/login/login.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    scrollTop: 0,
    passwordShow: true,    // 密码模式
    loginModel: 0,         // 登录模式  0 手机验证（默认） 1 账号密码 
    account: "",           // 账号名    
    password: "",          // 密码  
    phone: "",             // 手机号
    code: null,             // 验证码展示时间-倒计时
    apply_status: 3
  },
  // 注册
  register() {
    wx.navigateTo({
      url: '/pages/register/register',
    })
  },
  onClick(e) {
    this.setData({
      loginModel: e.detail.index
    })
  },
  /**
   * 修改登录信息
   * @param {*} e 
   */
  changeLoginInfo(e) {
    let data = {}
    data[e.currentTarget.dataset.name] = e.detail.value;
    this.setData(data);
  },
  // 登录
  login() {
    let set_ = wx.setStorageSync;
    if (this.data.loginModel === 0) {
      if (!this.data.phone) {
        return wx.$Toast("请输入手机号码")
      }
      if (wx.$c.isMobile(this.data.loginModel)) {
        return wx.$Toast('请输入正确的手机号码');
      }
      if (!this.data.captcha) {
        return wx.$Toast("请输入验证码")
      }
      wx.$api.smsLogin({
        mobile: this.data.phone,
        vcode: this.data.captcha
      }).then(res => {
        if (res.data.code == 200) {
          let {
            company_id,
            token
          } = res.data.data || {};

          set_('token', token);
          set_('company_id', company_id);
          wx.switchTab({
            url: '/pages/index/index',
          })
        } else {
          return wx.$Toast(res.data.msg);
        }
      })
    } else {
      if (!this.data.account) {
        return wx.$Toast("请输入账号")
      }
      if (!this.data.password) {
        return wx.$Toast("请输入密码")
      }

      wx.$api.ap_login({
        account: this.data.account,
        password: this.data.password
      }).then(res => {
        if (res.data.code == 200) {
          let {
            company_id,
            token
          } = res.data.data || {};

          set_('token', token);
          set_('company_id', company_id);
          wx.switchTab({
            url: '/pages/index/index',
          })
        } else {
          return wx.$Toast(res.data.msg);
        }
      })
    }
  },
  // 密码展示状态
  passwordType() {
    let status = this.data.passwordShow;
    console.log("点击获取状态", status)
    this.setData({
      passwordShow: !status
    })
    console.log("获取改变后的状态", this.data.passwordShow)
  },
  // 获取验证码
  getCode() {
    let { phone } = this.data || {};
    if (!phone) {
      return wx.$Toast("请输入手机号码")
    }
    if (!wx.isMobile(phone)) {
      return wx.$Toast("手机号码格式不正确")
    }
    let num = 120;
    this.setData({ code: num + 's' })
    let t = setInterval(() => {
      num -= 1;
      if (num >= 0) {
        this.setData({ code: num + 's' })
      } else {
        this.setData({ code: null })
        clearInterval(t)
      }
    }, 1000)
    wx.$api.sendSms({ mobile: phone, type: 'bind' }).then(r => {
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.setData({
      apply_status: wx.getStorageSync('apply_status')
    })

    console.log(this.data.apply_status, 'apply_status')
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    if(!wx.getStorageSync('token')){        //如果内存中没有token的话，就重新去获取一次token
      console.log('show_get_openid');
      getApp().getOpenid((data) => {
        wx.setStorageSync('token', data.token)
      });
    }
   
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})